package Servlet;

import java.io.IOException;
import java.text.ParseException;
import java.util.Collection;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import anonymus.excepcion.DAOExcepcion;
import anonymus.modelo.Horario;
import anonymus.modelo.Local;
import anonymus.negocio.CanchaNegocio;
import anonymus.negocio.HorarioNegocio;

/**
 * Servlet implementation class CanchaRegistrarServlet
 */
@WebServlet("/CanchaRegistrarServlet")
public class CanchaRegistrarServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public CanchaRegistrarServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		
		String nombreLocal = request.getParameter("nombreLocal");
		String nombreCancha = request.getParameter("nombreCancha");
		String caracteristicasCancha = request.getParameter("caracteristicasCancha");
		String fechaAlquiler = request.getParameter("fechaAlquiler");
		
		String horaInicio = request.getParameter("horaInicio");
		String horaFin = request.getParameter("horaFin");
		String bPromocionEspecial = request.getParameter("bPromocionEspecial");
		String descripcionEspecial = request.getParameter("txtPromocionEspecial");
		String Tarifa = request.getParameter("Tarifa");
		
		String fotoCancha = request.getParameter("fotoCancha");
		
		boolean promocionEspecial;
		
		if (bPromocionEspecial.equalsIgnoreCase("SI")) promocionEspecial = true;
		else promocionEspecial = false;
		
		Double tarifa = Double.valueOf(Tarifa);
		
		CanchaNegocio neg = new CanchaNegocio();
		Local local = new Local();
		local.setNombreLoc(nombreLocal);
		
		HorarioNegocio hNeg = new HorarioNegocio();
		Collection<Horario> horarios = null;
		try {
			horarios = hNeg.CreaHorario(fechaAlquiler, horaInicio, horaFin, tarifa, promocionEspecial, descripcionEspecial);
		} catch (ParseException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		
		
		
		try {
			neg.insertarCancha(nombreCancha, caracteristicasCancha, fotoCancha, local, horarios);
			
		} catch (DAOExcepcion e) {
			// TODO Auto-generated catch block
			RequestDispatcher rd = request.getRequestDispatcher("error.jsp");
			rd.forward(request, response);
		}
		
		
	}

}
